Method and system for semantic searching

ABSTRACT

A method comprising a preliminary automated analysis of at least one corpus of natural language text is disclosed. For each sentence of a corpus, the method includes performing a syntactic analysis using linguistic descriptions to generate at least one syntactic structure for the sentence, building a semantic structure for the sentence, associating each generated syntactic and semantic structure with the sentence, and saving each structure. For each corpus text that was preliminary analyzed, performing an indexing operation to index lexical meanings and values of linguistic parameters of each syntactic structure and each semantic structure associated with sentences in the corpus text. A semantic search includes at least one automatic preliminary analyzed corpus of sentences comprising searched values of linguistic, syntactic and semantic parameters. Due to a deep semantic analysis of a corpus, the search may be executed in various languages, in resources of various languages, and in the text of corpora of various languages regardless of the language of the query.

CROSS-REFERENCE TO RELATED APPLICATIONS

For purposes of the USPTO extra-statutory requirements, the presentapplication constitutes a continuation-in-part of U.S. patentapplication Ser. No. 12/983,220, filed on 31 Dec. 2010, which is acontinuation-in-part of U.S. Ser. No. 11/548,214, filed on 10 Oct. 2006now U.S. Pat. No. 8,078,450.

The United States Patent Office (USPTO) has published a noticeeffectively stating that the USPTO's computer programs require thatpatent applicants reference both a serial number and indicate whether anapplication is a continuation or continuation-in-part. Stephen G. Kunin,Benefit of Prior-Filed Application, USPTO Official Gazette 18 Mar. 2003.The present Applicant Entity (hereinafter “Applicant”) has providedabove a specific reference to the application(s) from which priority isbeing claimed as recited by statute. Applicant understands that thestatute is unambiguous in its specific reference language and does notrequire either a serial number or any characterization, such as“continuation” or “continuation-in-part,” for claiming priority to U.S.patent applications. Notwithstanding the foregoing, Applicantunderstands that the USPTO's computer programs have certain data entryrequirements, and hence Applicant is designating the present applicationas a continuation-in-part of its parent applications as set forth above,but expressly points out that such designations are not to be construedin any way as any type of commentary and/or admission as to whether ornot the present application contains any new matter in addition to thematter of its parent application(s).

All subject matter of the Related Applications and of any and allparent, grandparent, great-grandparent, etc. applications of the RelatedApplications is incorporated herein by reference to the extent suchsubject matter is not inconsistent herewith.

BACKGROUND OF THE INVENTION

1. Field

Implementations of the present invention relate to search technology. Inparticular, implementations of the present invention relate to searchingof electronic content available, for example, on the Internet and inother electronic resources, such as text corpora, dictionaries,glossaries, encyclopedias, etc.

2. Related Art

The inventors are aware of search technology that generates searchresults based on keywords entered by a user as part of a search query.

However, due to homonymy and homography in natural languages, a searchresult based on a keyword search may include a substantial amount ofnon-relevant or marginally relevant information. For example, if theuser searches for texts with the word “page” in the sense of “a man orboy employed as the personal attendant to a queen,” the user may receivea large number of non-relevant information where “page” refers to anInternet page, a page of a newspaper or magazine, a section of storeddata, etc. This is likely to happen because those other senses of theword “page” are substantially more frequent than the one referring to aman or boy.

Existing search systems make it possible to use simple query languagesto find documents that either contain or do not contain the words orword combinations specified by the user. However, the user cannotspecify whether the search words should occur within one sentence ornot. Also, the user cannot formulate a query for a set of words thatbelong to a certain class. And finally, existing search systems do notallow users to find sentences based on their syntactic or semanticproperties, e.g., examples illustrating a certain syntacticrelationship, examples illustrating a semantic relationship, they do notallow to make queries based on grammatical meanings, deep or surfaceslots, syntactic models, style and/or semantic features, etc. Thesetypes of searches may be of use to lexicographers, philologists,linguists, and students and teachers of native or foreign languages, andmany other users.

SUMMARY

According to a first aspect of the invention, there is provided acomputer-implemented method, comprising:

preliminarily automatic analyzing at least one corpus of naturallanguage texts comprising for each sentence of each natural languagetext of each corpus, the preliminarily analyzing including:

performing a syntactic analysis using linguistic descriptions togenerate at least one syntactic structure for the sentence;

building a semantic structure for the sentence;

associating each generated syntactic and semantic structure with thesentence; and

saving each generated syntactic and semantic structure;

for each corpus of natural language text that was preliminarilyanalyzed, performing an indexing operation to index lexical meanings andvalues of linguistic parameters of each syntactic structure and eachsemantic structure associated with sentences in the respective corpus;and

searching in at least one preliminarily analyzed corpus for sentencescomprising a searched value for at least one linguistic parameter or atleast one lexical meaning.

According to a second aspect of the invention, there is provided asystem for implementing the aforesaid method.

Other aspects of the invention will be apparent from the detaileddescription below. Generally, the present invention employs afull-fledged automatic syntactic and semantic analysis when indexingtexts making it possible to index and store all syntactic and semanticinformation about each sentence, as well as all interim parsing andresults and lexical choices, including results obtained when resolvingambiguities.

An analyzer uses various linguistic descriptions of a given naturallanguage to reflect all the real complexities of the natural language,rather than simplified or artificial descriptions, without the danger ofa combinatorial explosion. A principle of integral and purpose-drivenrecognition, (i.e. hypotheses about the structure of the part of asentence are verified within the hypotheses about the structure of thewhole sentence), is implemented as during the analysis stage. It allowsto avoid analyzing numerous parsing of anomalous variants.

The use of the technology described herein allows one to search and findrelevant information using a semantic query that can be expressed inspecific semantic query language, or in a natural language. The sameanalyzer is able to analyze a question to recognize its syntacticalstructure, to build its semantic structure, and in such a way “tounderstand” the meaning of a query. Searching is implemented inaccordance with syntax and semantic information included in or derivedfrom searchable resources. A user receives only relevant search results.

Additionally, since the search query may be expressed or translated intosemantic language-independent terms, the search may be executed in andderived from various languages, in resources of various languages, intext corpora of various languages. So, a user can get information thatis presented in all resources regardless of the language of the query.The result of searching may be presented to users in a resource language(as it is presented in the resource), and also the result of searchingmay be translated into the language of the query by means of a machinetranslation system.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a flow chart of a method 100 for preprocessing sourcesentences 112 in a source natural language prior to initiating a search.

FIG. 2 illustrates an example of a graph of generalized constituentsobtained as a result of a rough syntactic analysis of the sentence “Thisboy is smart, he'll succeed in life.”

FIG. 3 shows an example of a syntactic tree, obtained as a result of aprecise syntactic analysis of the sentence “This boy is smart, he'llsucceed in life.”

FIG. 4 shows an example of a semantic structure obtained for thesentence “This boy is smart, he'll succeed in life.”

FIG. 5 illustrates converting a source sentence into a languageindependent semantic structure through various structures according toan exemplary implementation of the invention and the linguisticdescriptions employed.

FIG. 6 is a diagram illustrating linguistic descriptions according toone exemplary implementation of the invention.

FIG. 7 illustrates exemplary morphological descriptions.

FIG. 8 illustrates exemplary syntactic descriptions.

FIG. 9 is a diagram illustrating semantic descriptions according to oneexemplary implementation of the invention.

FIG. 10 is a diagram illustrating lexical descriptions according to oneexemplary implementation of the invention.

FIG. 11 shows an example of a search system interface that allows a userto formulate queries using semantic relations and semantic classes orlexical meanings that belong to a certain semantic class instead ofconventional key words.

FIG. 12 shows another example of query using semantic relations andsemantic classes or lexical meanings that belong to a certain semanticclass.

FIG. 13 shows still another example of query using semantic relationsand semantic classes or lexical meanings.

FIG. 13A shows still another example of query using variables fordenoting “lacunas” in searched sentences and a possibility of selectingMultilanguage corpora of texts.

FIG. 14 shows exemplary hardware for implementing the searching systemusing the techniques described in this application, in accordance withan implementation of the present disclosure.

DETAILED DESCRIPTION

In the following description, for purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of the invention. It will be apparent, however, to oneskilled in the art that the invention can be practiced without thesespecific details.

Reference in this specification to “one embodiment” or “animplementation” means that a particular feature, structure, orcharacteristic described in connection with the embodiment is includedin at least one implementation of the invention. The appearances of thephrase “in one embodiment” or “in one implementation” in various placesin the specification are not necessarily all referring to the sameembodiment or implementation, nor are separate or alternativeembodiments mutually exclusive of other embodiments. Moreover, variousfeatures are described which may be exhibited by some embodiments andnot by others. Similarly, various requirements are described which maybe requirements for some embodiments but not other embodiments.

Implementations of the present invention disclose indexing techniquesand systems for indexing natural language texts. Sematic searchtechniques and systems are also disclosed.

Broadly, one indexing technique disclosed herein comprises performing acomprehensive or exhaustive syntactic and semantic analysis of naturallanguage texts to build an index for each natural language text.Advantageously, all syntactic and semantic information about eachsentence in the natural language texts generated pursuant to thesyntactic and semantic analysis is saved. The saved information mayinclude interim parsing results and lexical choices, including theresults obtained when resolving ambiguities.

The index so produced may be used to allow semantic searching of thenatural language texts, as will be described later.

The existing search systems make it possible to use simple querylanguages to find documents that either contain or do not contain thewords or word combinations specified by the user. However, the usercannot specify whether the search words should occur within one sentenceor not. Also, the user cannot formulate a query for a set of words thatbelong to a certain class. And finally, the existing search systems donot allow users to find sentences based on their syntactic or semanticproperties, e.g. examples illustrating a certain syntactic relationship,examples illustrating a semantic relationship, or searches based ongrammatical meanings, deep or surface slots, syntactic models, styleand/or semantic features, etc. These types of searches may be of use tolexicographers, philologists, linguists, and students and teachers ofnative or foreign languages, and many other users.

Advantageously, the problems associated with existing search systems areovercome or at least reduced by the techniques and systems disclosedherein.

Further, implementations of the invention allows a user to search and tofind relevant information using a semantic query that can be expressedin specific semantic query language, and also in a natural language. Thesame analyzer analyzes the question to recognize its syntacticalstructure, to build its semantic structure, and in such a way“understands” the meaning of the query. Searching is implemented inaccordance with syntax and semantic of information which is included insearchable resources. So, a user can get only relevant output.

Additionally, since the search query may be expressed or translated intosemantic language-independent terms, the search may be executed invarious languages, in resources of various languages, in text corpora ofvarious languages. Thus, a user can get information that is presented inall resources regardless of the language of the query. The result ofsearching may be presented to users in a resource language (as it ispresented in the resource), and also the result of searching may betranslated into the language of the query by means of a machinetranslation system.

Co-pending application U.S. Ser. No. 11/548,214 discloses syntactic andsemantic analysis methods (hereinafter “the analysis methods”). Theanalysis methods may be used to perform the analysis step of thedisclosed indexing techniques. The analysis methods use a large numberof exhaustive linguistic descriptions of a given natural language toreflect all the real complexities of the natural language, rather thansimplified or artificial descriptions, without the danger of acombinatorial explosion, an unmanageable exponential complexity.Moreover, the analysis methods are based on a principle of integral andpurpose-driven recognition, i.e. hypotheses about the structure of apart of a sentence are verified based on hypotheses about the structureof the whole sentence. This obviates the need to analyze numerousparsing anomalies or variants.

The analysis methods are now described, in accordance with one exemplaryimplementation. Referring to FIG. 1, there is shown a method 100 forpreprocessing source sentences 112 in a source natural language prior tosearch. At step 110, the source sentences are analyzed using linguisticdescriptions useful for analyzing the source sentence. The linguisticdescriptions may include morphological descriptions, syntacticdescriptions, lexical descriptions, and semantic descriptions. In oneimplementation, a plurality of linguistic models and knowledge aboutnatural languages may be arranged in a database and applied foranalyzing each source sentence. Such a plurality of models could includea morphology model, a syntax model a grammar model and alexical-semantic model. In a particular implementation, integral modelsfor describing the syntax and semantics of the source language are usedin order to recognize the meanings of the source sentence, analyzecomplex language structures, and correctly convey information encoded inthe source sentence.

When analyzing the meaning of the source sentence, a two-step analysisalgorithm (e.g., rough syntactic analysis and precise syntacticanalysis) may be implemented to make use of linguistic models andknowledge at various levels, to calculate probability ratings and togenerate the most probable syntactic structure, e.g., a best syntacticstructure.

Accordingly, a rough syntactic analysis is performed on the sourcesentence to generate a graph of generalized constituents for furthersyntactic analysis. All the possible surface syntactic models for eachelement of lexical-morphological structure are applied, and all thepossible constituents are built and generalized to represent all thepossible variants of parsing the sentence syntactically. FIG. 2illustrates an example of a graph of generalized constituents obtainedas a result of rough syntactic analysis of the sentence “This boy issmart, he'll succeed in life.”

Following the rough syntactic analysis, a precise syntactic analysis isperformed on the graph of generalized constituents to generate one ormore syntactic trees to represent the source sentence. In oneimplementation, generating the syntactic tree comprises choosing betweenlexical options and choosing between relations from the graphs. Manyprior and statistical ratings may be used during the process of choosingbetween lexical options, and in choosing between relations from thegraph. The prior and statistical ratings may also be used for assessmentof parts of the generated tree and for the whole tree. In oneimplementation, the one or more syntactic trees may be generated inorder of decreasing assessment. Thus, the best syntactic tree may begenerated first. Non-tree links are also checked and generated for eachsyntactic tree at this time. If the first generated syntactic treefails, for example, because of impossibility to establish non-treelinks, the second syntactic tree is taken as the best, etc. FIG. 3 showsan example of a syntactic tree 300, obtained as a result of precisesyntactic analysis of the sentence “This boy is smart, he'll succeed inlife.” This tree contains complete syntactic information, such aslexical meanings, parts of speech, syntactic roles, grammatical values,syntactic relations (slots), syntactic models, non-tree link types, etc.

This novel two-step syntactic analysis approach ensures that the meaningof the source sentence is accurately represented by the best syntacticstructure chosen from the one or more syntactic trees. Advantageously,the two-step analysis approach follows a principle of integral andpurpose-driven recognition, i.e., hypotheses about the structure of apart of a sentence are verified using all available linguisticdescriptions within the hypotheses about the structure of the wholesentence. This approach avoids a need to analyze numerous parsinganomalies or variants known to be invalid.

With reference to FIG. 1, at step 120, after the source sentence isanalyzed, the syntactic structure of the sentence is semanticallyinterpreted, and a language-independent semantic structure isconstructed to represent the meaning of the source sentence. Thelanguage-independent semantic structure is a generalized data structurein language-independent form or format. Such a novellanguage-independent semantic structure is generated for each sourcesentence to accurately describe the meaning of the source sentence. Thenovel language-independent semantic structure can be applied to variousapplications, including, but not limited to, automated abstracting,machine translation, control systems, information retrieval or search,etc.

The disclosed analysis methods ensure that the maximum accuracy inconveying or understanding the meanings of the source sentence isachieved. FIG. 4 shows an example of a semantic structure, obtained forthe sentence “This boy is smart, he'll succeed in life.” This structurecontains all syntactic and semantic information, such as semantic class,semantemes, semantic relations (deep slots), etc.

FIG. 5 illustrates a method to convert a source sentence into a languageindependent semantic structure through various structures according toan exemplary implementation of the invention and the linguisticdescriptions employed. A lexical-morphological structure 522 is createdfrom a source sentence (each source sentence in a corpora). A graph ofgeneralized constituents is created 532. Next, one or more syntactictrees is created 542. A best syntactic structure is selected 546. If abest one is not found, the method iterates until a best syntacticstructure is identified (or until the system and method are exhausted ofpossibilities). Once a best syntactic structure is identified andselected, a language-independent semantic structure is created 552.Indices are then generated.

FIG. 6 is a diagram illustrating language descriptions 610 according toone exemplary implementation of the technology. With reference to FIG.6, language descriptions 610 comprise morphological descriptions 501,syntactic descriptions 502, lexical descriptions, 503 and semanticdescriptions 504. Language descriptions 610 are joined into one commonconcept. The core of the language descriptions 610 is a semantichierarchy, which links together language-independent semanticdescriptions 504 and language-specific (1) lexical descriptions 503, (2)morphological descriptions 501, and (3) syntactic descriptions 502 foreach language.

Semantic hierarchy may include semantic notions or semantic entitiesreferred to herein as “semantic classes”. The semantic classes may bearranged into a sematic hierarchy comprising hierarchical parent-childrelationships. In general, a child semantic class inherits mostproperties of its direct parent and all ancestral semantic classes. Forexample, semantic class SUBSTANCE is a child of semantic class ENTITYand at the same time it is a parent of semantic classes GAS, LIQUID,METAL, WOOD MATERIAL, etc.

Each semantic class in the semantic hierarchy is supplied with a deepmodel. The deep model of the semantic class is a set of the deep slots.Deep slots reflect the semantic roles of child constituents in varioussentences with objects of the semantic class as the core of a parentconstituent and the possible semantic classes as fillers of deep slots.The deep slots express semantic relationships between constituents,including, for example, “agent”, “addressee”, “instrument”, “quantity”,etc. A child semantic class inherits and adjusts the deep model of itsdirect parent semantic class.

Semantic descriptions 504 are language-independent. Semanticdescriptions 504 may provide descriptions of deep constituents, and maycomprise a semantic hierarchy, deep slots descriptions, a system ofsemantemes, and pragmatic descriptions.

FIG. 9 is a diagram illustrating semantic descriptions according to oneexemplary implementation of the technology. Deep slots 914 reflect thesemantic roles of child constituents in the deep models 912. The deepslots descriptions 920 also contain grammatical and semanticrestrictions on possible fillers of the deep slots. The properties andrestrictions for the deep slots 914 and their possible fillers are verysimilar and oftentimes identical among different languages.

A system of semantemes represents a set of semantic categories. As anexample, a semantic category “DegreeOfComparison” can be used todescribe the degrees of comparison expressed by various forms ofadjectives, for example, “easy”, “easier” and “easiest”. So, thesemantic category “DegreeOfComparison” may include such semantemes as,for example, “Positive”, “ComparativeHigherDegree”,“SuperlativeHighestDegree”, among others. As another example, a semanticcategory “RelationToReferencePoint” can be used to describe an order asbefore or after a reference point relative to some event or object,etc., and its semantemes may include, “Previous”, “Subsequent”, and theorder may be spatial or temporal in a broad sense. As yet anotherexample, “EvaluationObjective”, as a semantic category, may describe anobjective assessment, such as “Bad”, “Good”, etc.

The systems of semantemes include language-independent semanticattributes that express semantic characteristics as well as stylistic,pragmatic and communicative characteristics. Semantemes can also be usedto express an atomic meaning that finds a regular grammatical and/orlexical expression in a language. By purpose and usage, semantemes maybe divided into various kinds, including, but not limited to,grammatical semantemes, lexical semantemes, and classifying grammatical(differentiating) semantemes.

Grammatical semantemes 932 are used to describe grammatical propertiesof constituents when transforming a syntactic tree (a language dependentobject) into a semantic structure. Lexical semantemes 934 describespecific properties of objects (for example, “being flat” or “beingliquid”) and are used in the deep slot descriptions 920 as restrictionfor deep slot fillers (for example, for the verbs “face (with)” and“flood”, respectively). Classifying grammatical (differentiating)semantemes 936 express differentiating properties of objects within asingle semantic class. For example, in the semantic class “HAIRDRESSER”the semanteme <<RelatedToMen>> is assigned to the lexical meaning“barber”, unlike other lexical meanings which also belong to this class,such as “hairdresser”, “hairstylist”, etc.

Pragmatic descriptions 940 are used to assign a corresponding theme,style or genre to texts and objects of the semantic hierarchy. Forexample, “Economic Policy”, “Foreign Policy”, “Justice”, “Legislation”,“Trade”, “Finance”, etc.

With reference to FIG. 5, the morphological descriptions 501, thelexical descriptions 503, the syntactic descriptions 502, and thesemantic descriptions 504 may be related. A lexical meaning may have oneor more surface (syntactic) models that may be provided by semantemesand pragmatic characteristics. The syntactic descriptions 502 and thesemantic descriptions 504 are also related. For examples, diatheses ofthe syntactic descriptions 502 can be considered as the “interface”between the language-specific surface models and language-independentdeep models of the semantic description 504.

FIG. 7 illustrates exemplary morphological descriptions 501. As shown,the components of the morphological descriptions 501 include, but arenot limited to, word-inflexion description 710, grammatical system(e.g., grammemes) 720, and word-formation description 730. In oneembodiment, grammatical system 720 includes a set of grammaticalcategories, such as, “Part of speech”, “Case”, “Gender”, “Number”,“Person”, “Reflexivity”, “Tense”, “Aspect”, etc. and their meanings,hereafter referred to as “grammemes”. For example, part of speechgrammemes may include “Adjective”, “Noun”, “Verb”, etc.; case grammemesmay include “Nominative”, “Accusative”, “Genitive”, etc.; and gendergrammemes may include “Feminine”, “Masculine”, “Neuter”, etc.

Word-inflexion description 710 describes how the main form of a wordform may change according to its case, gender, number, tense, etc. andbroadly includes all possible forms for a given word. Word-formation 730describes which new words may be generated involving a given word. Thegrammemes are units of the grammatical systems 720 and, as shown by alink 722 and a link 724, the grammemes can be used to build theword-inflexion description 710 and the word-formation description 730.

FIG. 8 illustrates exemplary syntactic descriptions 502. The componentsof the syntactic descriptions 502 may comprise surface models 810,surface slot descriptions 820, referential and structural controldescriptions 856, government and agreement descriptions 840, non-treesyntax descriptions 850, and analysis rules 860. The syntacticdescriptions 502 are used to construct possible syntactic structures ofa source sentence from a given source language, taking into account freelinear word order, non-tree syntactic phenomena (e.g., coordination,ellipsis, etc.), referential relationships, and other considerations.

FIG. 10 is a diagram illustrating lexical descriptions 503 according toone exemplary implementation of the technology. The lexical descriptions503 include a Lexical-Semantic Dictionary 1004 that contains a set oflexical meanings 1012 arranged with their semantic classes into aSemantic hierarchy, where each lexical meaning 1012 may include, but isnot limited to, its deep model 912, surface model 810, grammatical value1008 and semantic value 1010.

Returning to FIG. 1, at step 130, after the language-independentsemantic structure is constructed, then a syntactic structure and alanguage-independent semantic structure are indexed. Each parameter ofthe morphological, syntactic, lexical, and semantic descriptions can beindexed in the same fashion as each word in a document is indexed. Anindex usually comprises a table where each word (each lexeme or wordform) in a document is accompanied by a list of numbers or addresses ofits occurrences in that document. According to implementations describedherein, an index is produced to index all values of morphological,syntactic, lexical, and semantic parameters. These parameters values aregenerated during the two-stage semantic analysis described above. Theindex may be used to facilitate semantic searching of the naturallanguage source text. Thus, for example, a user may search for allsentences containing nouns with the property “being flat” or “beingliquid”, or all sentences containing nouns or verbs denoting processesof creating something, or destructing, or moving, etc.

Combinations of two, three, or, generally, combinations of n numbers canbe used to index various syntactic, semantic or other parameters. Forexample, to index surface or deep slots, for each slot, combinations oftwo numbers of words that are linked by the relationship correspondingto these slots can be used. For example, referring to the example ofFIG. 4 of a semantic structure obtained for the sentence “This boy issmart, he'll succeed in life”, the deep slot ‘Sphere’ (450) relates thelexical meaning succeed:TO_SUCCEED (460) with the lexical meaninglife:LIVE (470). More particularly, life:LIVE fills the deep slot‘Sphere’ of the verb succeed:TO_SUCCEED. When the index of lexicalmeanings is built, in accordance with the techniques disclosed herein,these occurrences of the lexical meanings are assigned numbers based onthe position of the occurrences within the document, for example, N1 andN2, respectively. When the index of deep slots is built, every deep slothas a corresponding list of occurrences in the document. For example,the index of the deep slot ‘Sphere’ will include the pair (N1, N2),among others.

Since not only words are indexed, but semantic classes, syntactic andsemantic relations, any other elements of syntactic and semanticstructures too, it becomes possible to search contexts including notonly words, but also contexts including lexical meanings, semanticclasses, contexts including words having the same syntactic featuresor/and semantic features or/and morphological features or a sets of suchfeatures. Additionally, sentences with non-tree syntax phenomena, forexample, ellipsis, coordination etc. may be found. Since it possible tosearch semantic classes, sets of semantically associated words andnotions may be found.

It is also possible to find fragments of syntactic and/or semanticstructures. The results of searching may be sentences or paragraphs, orany other fragments as a user wants and selects the correspondingoption. Since all sentences in corpora are analyzed and saved with allresults of their syntactic and semantic analyses, the syntactic and/orsemantic structures of the found sentences may be graphically shown to auser.

FIG. 11 shows an example of a search system graphical user interfacethat allows a user to formulate queries using semantic relations andlexical meanings that belong to a certain semantic class. An example ofa query is shown in FIG. 11, and answers the question “What countrieswere discovered?” In terms of a semantic query in window 1110, the queryappears as “discover [Object:“COUNTRY”]”, and means that the semanticsearch system will search sentences with the verb “discover” and theobject that belongs to the semantic class COUNTRY. Results of the searchare shown in a search results window 1120.

Another example of a query is shown in FIG. 12, it answers the question“What can be made from milk?” In terms of a semantic query, in window1210 the query appears as “CREATION_VERBS” [Object:<Noun>, Fabricative:milk]”, where “CREATION_VERBS” is a semantic class of verbs denotingprocess of creation, such as “to make”, “to produce”, “to manufacture”,“to confect” etc. Any of these and other verbs belonging to the semanticclass “CREATION_VERBS” may be found in required sentences. “Fabricative”is a semantic role (semantic slot) that means “raw material”, materialfrom which something us produced. In this case, such “raw material” ismilk. So, the result must be a <Noun> and it must fill the semantic slot“Object” in sentences. Results of the search are shown in a searchresults window 1220.

Yet another example of a query to the semantic search system is shown inFIG. 13. The question is: “What do the people collect?” In terms of asemantic query, in window 1310, the query appears as“collect[$Subject:people, $Object_Direct:<Noun>]”. The semantic searchsystem searches sentences with the verb “collect” and the word “people”that fills the surface slot “Subject”. The goal of the search is a noun(or nouns) in the role of the direct object of the verb “collect”.Results of search are shown in a search results window 1320.

FIG. 13A shows still another example of query using a variable fordenoting “lacunas” in searched sentences and a possibility of selectingone or more multi-language or multi-lingual corpora of texts. In thisimplementation, such variable, for example, [$Subject: [ . . .[people]]] is used for describing searched sentences comprising a noungroup with the core “people” filling a syntactic (surface) slot“Subject” and the verb “think” in any form.

In one implementation of the invention, all morphological forms of wordsinvolved in queries are taken into account, and all morphological formsof words may be found. The restrictions on morphological forms of wordsinvolved in queries and searched morphological forms may be specified asa restriction on grammatical values and is shown in, for example,brackets < >.

The index produced in accordance with the techniques may be provisionedas part of a semantic search system, in accordance with oneimplementation of the invention.

Implementations of the present invention also disclose a semantic searchtechnique wherein a user can formulate a question in a natural language.The same analysis techniques are then used to analyze the question,recognize its syntactical structure, and build its semantic structure,thereby “understanding” the meaning of the sentence. The constructedsemantic structure is then translated into a query language for thesemantic search system.

Additionally, since the search query may be expressed or translated intosemantic language-independent terms, the search may be executed invarious languages, in resources of various languages, in text corpora ofvarious languages. So, a user can get information that is presented inall resources regardless of the language of the query. The result ofsearching may be presented to users in a resource language (as it ispresented in the resource), and also the result of searching may betranslated into the language of the query by means of a machinetranslation system.

FIG. 14 shows exemplary hardware for implementing the techniques andsystems described herein, in accordance with one implementation of thepresent disclosure. Referring to FIG. 14, the exemplary hardware 1400includes at least one processor 1402 coupled to a memory 1404. Theprocessor 1402 may represent one or more processors (e.g.microprocessors), and the memory 1404 may represent random access memory(RAM) devices comprising a main storage of the hardware 1400, as well asany supplemental levels of memory, e.g., cache memories, non-volatile orback-up memories (e.g. programmable or flash memories), read-onlymemories, etc. In addition, the memory 1404 may be considered to includememory storage physically located elsewhere in the hardware 1400, e.g.any cache memory in the processor 1402 as well as any storage capacityused as a virtual memory, e.g., as stored on a mass storage device 1410.

The hardware 1400 also typically receives a number of inputs and outputsfor communicating information externally. For interface with a user oroperator, the hardware 1400 may include one or more user input devices1406 (e.g., a keyboard, a mouse, imaging device, scanner, microphone)and a one or more output devices 1408 (e.g., a Liquid Crystal Display(LCD) panel, a sound playback device (speaker)). To embody the presentinvention, the hardware 1400 typically includes at least one screendevice.

For additional storage, the hardware 1400 may also include one or moremass storage devices 1410, e.g., a floppy or other removable disk drive,a hard disk drive, a Direct Access Storage Device (DASD), an opticaldrive (e.g. a Compact Disk (CD) drive, a Digital Versatile Disk (DVD)drive) and/or a tape drive, among others. Furthermore, the hardware 1400may include an interface with one or more networks 1412 (e.g., a localarea network (LAN), a wide area network (WAN), a wireless network,and/or the Internet among others) to permit the communication ofinformation with other computers coupled to the networks. It should beappreciated that the hardware 1400 typically includes suitable analogand/or digital interfaces between the processor 1402 and each of thecomponents 1404, 1406, 1408, and 1412 as is well known in the art.

The hardware 1400 operates under the control of an operating system1414, and executes various computer software applications, components,programs, objects, modules, etc. to implement the techniques describedabove. Moreover, various applications, components, programs, objects,etc., collectively indicated by application software 1416 in FIG. 14,may also execute on one or more processors in another computer coupledto the hardware 1400 via a network 1412, e.g. in a distributed computingenvironment, whereby the processing required to implement the functionsof a computer program may be allocated to multiple computers over anetwork.

In general, the routines executed to implement the embodiments of theinvention may be implemented as part of an operating system or aspecific application, component, program, object, module or sequence ofinstructions referred to as a “computer program.” A computer programtypically comprises one or more instruction sets at various times invarious memory and storage devices in a computer, and that, when readand executed by one or more processors in a computer, cause the computerto perform operations necessary to execute elements involving thevarious aspects of the invention. Moreover, while the invention has beendescribed in the context of fully functioning computers and computersystems, those skilled in the art will appreciate that the variousembodiments of the invention are capable of being distributed as aprogram product in a variety of forms, and that the invention appliesequally to actually effect the distribution regardless of the particulartype of computer-readable media used. Examples of computer-readablemedia include but are not limited to recordable type media such asvolatile and non-volatile memory devices, floppy and other removabledisks, hard disk drives, optical disks (e.g., Compact Disk Read-OnlyMemory (CD-ROMs), Digital Versatile Disks (DVDs), flash memory, etc.),among others. Another type of distribution may be implemented asInternet downloads.

While certain exemplary embodiments have been described and shown in theaccompanying drawings, it is to be understood that such embodiments aremerely illustrative and not restrictive of the broad invention and thatthis invention is not limited to the specific constructions andarrangements shown and described, since various other modifications mayoccur to those ordinarily skilled in the art upon studying thisdisclosure. In an area of technology such as this, where growth is fastand further advancements are not easily foreseen, the disclosedembodiments may be readily modified or re-arranged in one or more of itsdetails as facilitated by enabling technological advancements withoutdeparting from the principals of the present disclosure.

The invention claimed is:
 1. A computer-implemented method forfacilitating a semantic search, the method comprising: identifying acorpora of natural language texts including a plurality of sentences;performing a syntactic-semantic analysis on each sentence of theplurality of sentences using a linguistic description associated with alanguage of the sentence, wherein the syntactic-semantic analysiscomprises: generating a graph of generalized constituents for eachsentence of the plurality of sentences; and generating one or moresyntactic trees based on the graphs of generalized constituents torepresent the corresponding sentences; generating at least one syntacticstructure for each sentence of the plurality of sentences by selecting abest syntactic tree from the generated one or more syntactic trees torepresent the at least one syntactic structure of the sentence;generating a semantic structure for each sentence of the corpora ofnatural language texts, based on the generated at least one syntacticstructure of the sentence, wherein the semantic structure is languageindependent and wherein the semantic structure comprises semanticclasses, semantemes, deep slots, and non-tree links; associating thegenerated syntactic structures and the generated semantic structureswith the respective sentences; creating syntactic index for each meaningof at least one linguistic parameter of each of the generated syntacticstructures; creating a semantic index for each meaning of at least oneparameter of the semantic structures; receiving a search querycomprising semantic language-independent terms; searching the semanticindex based on the semantic language-independent terms and thelanguage-independent semantic structures; and receiving semantic searchresults from the semantic index, wherein the search results from thecorpora of natural language texts includes sentences in differentlanguages.
 2. The computer-implemented method of claim 1, wherein theperforming the syntactic-semantic analysis includes resolving anambiguity of lexical unit meanings within at least one of the sentencesof the corpora of natural language texts.
 3. The computer-implementedmethod of claim 1, wherein each sentence includes one or morelanguage-specific properties, and wherein generating the languageindependent semantic structure comprises encoding each language-specificproperty with a language-independent parameter.
 4. Thecomputer-implemented method of claim 3, wherein the method furthercomprises indexing at least one meaning of each language-independentparameter.
 5. The computer-implemented method of claim 1, wherein thesearch is performed in a corpora of natural language texts of differentlanguages.
 6. The computer-implemented method of claim 1, wherein thesemantic search results are received in a source language.
 7. Thecomputer-implemented method of claim 1, wherein the method furthercomprises indexing combinations of two or more meanings of syntacticparameters.
 8. The computer-implemented method of claim 1, wherein themethod further comprises indexing combinations of two or more meaningsof semantic parameters.
 9. The computer-implemented method of claim 1,wherein the method further comprises: performing a search query andsending a search result based at least in part upon the syntactic index.10. The computer-implemented method of claim 1, wherein the methodfurther comprises: performing a search query and sending a search resultbased at least in part upon the semantic index.
 11. Thecomputer-implemented method of claim 1, where the linguistic descriptionincludes at least a semantic description, a syntactic description, alexical description, and a morphological description.
 12. Thecomputer-implemented method of claim 11, wherein the method furthercomprises generating an overall index from: at least one value of asemantic parameter associated with the semantic description, at leastone value of the syntactic parameter associated with the syntacticdescription, at least one value of a lexical parameter associated withthe lexical description, and at least one value of a morphologicalparameter associated with the morphological description.
 13. Thecomputer-implemented method of claim 12, wherein the syntactic parametermay include a syntactic relation.
 14. The computer-implemented method ofclaim 12, wherein the semantic parameter may include a semanticrelation.
 15. A computer-implemented method for providing a result of asearch, the method comprising: for each sentence of a corpus of texts,the corpus of texts including a plurality of sentences, generating atleast one syntactic structure for each sentence of the plurality ofsentences, using at least one linguistic description associated with asource natural language by performing a syntactic-semantic analysis ofthe sentences comprising: generating graph of generalized constituentsfor each sentence of the plurality of sentences; generating one or moresyntactic trees based on the graphs of generalized constituents torepresent the corresponding sentences; and selecting a best syntactictree from the generated one or more syntactic trees to represent the atleast one syntactic structure; building a language-independent semanticstructure for each said sentence based on the at least one syntacticstructure of the sentence, wherein the semantic structure comprisessemantic classes, semantemes, deep slots, and non-tree links;associating each generated syntactic structure and each languageindependent semantic structure with a respective sentence; indexing atleast one meaning of linguistic parameters associated with eachsentence; indexing at least one lexical meaning associated with eachlexical unit of each sentence; indexing at least one value associatedwith linguistic parameters related to a syntactic structure of eachsentence; indexing at least one value associated with semanticparameters related to the language-independent semantic structure ofeach sentence; and receiving a search query comprising semanticlanguage-independent terms; searching the index of at least one valueassociated with semantic parameters based on the semanticlanguage-independent terms and the language-independent semanticstructures; and receiving semantic search results from the index of atleast one value associated with semantic parameters, wherein the searchresults include sentences from the corpus of text in differentlanguages.
 16. The computer-implemented method of claim 15, wherein thesearching includes resolving an ambiguity of lexical unit meaningswithin at least one of the sentences of the corpus of text.
 17. Thecomputer-implemented method of claim 15, wherein thelanguage-independent semantic structure for each said sentence includesa stylistic characteristic, a pragmatic characteristic or acommunicative characteristic.
 18. The computer-implemented method ofclaim 15, wherein the performing the search includes translating a queryterm into a semantic language-independent query term.
 19. A system forfacilitating a semantic search, the system comprising: a first processorand a computer readable memory; a corpus of natural language textsincluding a plurality of sentences; an analyzer in the computer readablememory configured to: perform a syntactic-semantic analysis on eachsentence of the plurality of sentences using a linguistic descriptionassociated with a language of the sentence wherein thesyntactic-semantic analysis comprises: generating a graph of generalizedconstituents for each sentence of the plurality of sentences; andgenerating one or more syntactic trees based on the graphs ofgeneralized constituents to represent the corresponding sentences;generating at least one syntactic structure for each sentence of theplurality of sentences by selecting a best syntactic tree from thegenerated one or more syntactic trees to represent the at least onesyntactic structure of the sentence; generating a semantic structure foreach sentence of the corpus of natural language texts, based on thegenerated at least one syntactic structure of the sentence, wherein thesemantic structure is language independent and wherein the semanticstructure comprises semantic classes, semantemes, deep slots, andnon-tree links; and associate the generated syntactic structures and thegenerated semantic structures with the respective sentences; an indexgeneration component configured to: create a syntactic index for eachmeaning of at least one linguistic parameter of the generated syntacticstructures; and create a semantic index for each meaning of at least oneparameter of the language independent semantic structures; and the firstprocessor configured to: receive a search query comprising semanticlanguage-independent terms; search the semantic index of at least onevalue associated with semantic parameters based on the semanticlanguage-independent terms and the language-independent semanticstructures; and receive semantic search results from the semantic indexof at least one value associated with semantic parameters, wherein thesearch results include sentences from the corpus of text in differentlanguages.
 20. The system of claim 19, wherein to perform thesyntactic-semantic analysis the analyzer is configured to resolve anambiguity of lexical unit meanings within at least one of the sentencesof the corpus of natural language texts.
 21. The system of claim 20,wherein each sentence includes a language-specific property, wherein thegenerating the language independent semantic structure includes encodingthe language-specific property with a language-independent parameter.22. The system of claim 21, wherein the index generation component isfurther configured to index at least one meaning of eachlanguage-independent parameter.
 23. The system of claim 19, wherein thesearch may be performed in a corpus of natural language texts ofdifferent languages.
 24. The system of claim 19, wherein the semanticsearch result is sent in a source language.
 25. The system of claim 19,wherein the index generation component is further configured to index ameaning of each sentence.
 26. The system of claim 19, wherein the indexgeneration component is further configured to index combinations of twoor more meanings of syntactic parameters.
 27. The system of claim 19,wherein the index generation component is further configured to indexcombinations of two or more meanings of semantic parameters.
 28. Thesystem of claim 19, wherein the first processor is further configuredto: after each generated syntactic structure and the languageindependent semantic structure for each sentence of the corpus ofnatural language text is stored, perform a search query and send asearch result based at least in part upon the syntactic index.
 29. Thesystem of claim 19, where each linguistic description includes at leasta semantic description, a syntactic description, a lexical description,and a morphological description.
 30. The system of claim 29, wherein theindex generation component is further configured to generate an overallindex from: at least one value of a semantic parameter associated withthe semantic description, at least one value of the syntactic parameterassociated with the syntactic description, at least one value of alexical parameter associated with the lexical description, and at leastone value of a morphological parameter associated with the morphologicaldescription.
 31. The system of claim 30, wherein the syntactic parametermay include a syntactic relation.
 32. The system of claim 30, whereinthe semantic parameter may include a semantic relation.
 33. One or morenon-transitory computer-readable media having computer-executableinstructions, which when executed perform steps, comprising:instructions for identifying a corpus of natural language textsincluding a plurality of sentences; instructions for performing asyntactic-semantic analysis on each sentence of the plurality ofsentences using a linguistic description associated with a language ofthe sentence, wherein the syntactic-semantic analysis comprises:generating graph of generalized constituents for each sentence of theplurality of sentences; and generating one or more syntactic trees basedon the graphs of generalized constituents to represent the correspondingsentences; generating at least one syntactic structure for each sentenceof the plurality of sentences by selecting a best syntactic tree fromthe generated one or more syntactic trees to represent the at least onesyntactic structure of the sentence; generating a semantic structure foreach sentence of the corpus of natural language texts, wherein thesemantic structure is language independent and wherein the semanticstructure comprises semantic classes, semantemes, deep slots, andnon-tree links; instructions for associating the language independentsemantic structure with a respective sentence; instructions for creatinga syntactic index for each meaning of at least one linguistic parameterof the generated syntactic structures; instructions for creating asemantic index for each meaning of at least one parameter of thelanguage independent semantic structures; instructions for receiving asearch query comprising semantic language-independent terms;instructions for searching the semantic index of at least one valueassociated with semantic parameters based on the semanticlanguage-independent terms and the language-independent semanticstructures; and instructions for receiving semantic search results fromthe semantic index of at least one value associated with semanticparameters, wherein the search results include sentences from the corpusof text in different languages.
 34. The one or more non-transitorycomputer-readable media of claim 33, wherein the instructions forperforming the syntactic-semantic analysis include instructions forresolving an ambiguity of lexical unit meanings within at least one ofthe sentences of the corpus of natural language texts.
 35. The one ormore non-transitory computer-readable media of claim 33, wherein eachsentence includes a language-specific property, wherein generating thelanguage independent semantic structure includes encoding thelanguage-specific property with a language-independent parameter. 36.The one or more non-transitory computer-readable media of claim 33,wherein the computer-executable instructions further compriseinstructions for indexing at least one meaning of eachlanguage-independent parameter.
 37. The one or more non-transitorycomputer-readable media of claim 33, wherein the search may be performedin a corpus of natural language texts of different languages.
 38. Theone or more non-transitory computer-readable media of claim 33, whereinthe semantic search result is sent in a source language.
 39. The one ormore non-transitory computer-readable media of claim 38, wherein theinstructions further comprise indexing a meaning of each sentence. 40.The one or more non-transitory computer-readable media of claim 33,wherein the instructions further comprise indexing combinations of twoor more meanings of syntactic parameters.
 41. The one or morenon-transitory computer-readable media of claim 33, wherein theinstructions further comprise indexing combinations of two or moremeanings of semantic parameters.
 42. The one or more non-transitorycomputer-readable media of claim 33, wherein the instructions furthercomprise: performing a search query and sending a search result based atleast in part upon the syntactic index.
 43. The one or morenon-transitory computer-readable media of claim 33, where eachlinguistic description includes at least a semantic description, asyntactic description, a lexical description, and a morphologicaldescription.
 44. The one or more non-transitory computer-readable mediaof claim 43, wherein the instructions further comprise instructions forgenerating an overall index from: at least one value of a semanticparameter associated with the semantic description, at least one valueof the syntactic parameter associated with the syntactic description, atleast one value of a lexical parameter associated with the lexicaldescription, and at least one value of a morphological parameterassociated with the morphological description.
 45. The one or morenon-transitory computer-readable media of claim 44, wherein thesyntactic parameter may include a syntactic relation.
 46. The one ormore non-transitory computer-readable media of claim 44, wherein thesemantic parameter may include a semantic relation.